package br.com.logistica.mbean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import org.apache.log4j.Logger;

import br.com.logistica.delegate.BusinessDelegate;
import br.com.logistica.util.dto.ServiceDTO;
import br.com.logistica.vo.Conhecimento;

public class ConhecimentoManagedBean implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private static Logger logg=Logger.getLogger(ConhecimentoManagedBean.class);
	private Conhecimento conhecimento;
	
	public Conhecimento getConhecimento() {
		return conhecimento;
	}

	public void setConhecimento(Conhecimento conhecimento) {
		this.conhecimento = conhecimento;
	}

	private List<Conhecimento> conhecimentos;
	
	public ConhecimentoManagedBean(){
		conhecimento=new Conhecimento();
		conhecimentos=atualizarListaConhecimento();
	}
	
	private List<Conhecimento> atualizarListaConhecimento(){
		List<Conhecimento> conh=null;
        ServiceDTO response=null;
        try
        {
            response = BusinessDelegate.getInstance( ).pesquisarTodosConhecimentos( ) ;
            conh = (ArrayList<Conhecimento>)response.get( "conhecimento" );
            conhecimentos=conh;
        }
        catch( Exception e )
        {
            logg.error( e ) ;
        }
        
        return conhecimentos;
	}
	
	public void deletarConhecimento(){
		ServiceDTO request=new ServiceDTO();
		request.set("conhecimento", conhecimento);
		try{
			BusinessDelegate.getInstance().deletarConhecimento(request);
		}
		catch(Throwable err){
			logg.error(err.getMessage());
		}
		this.atualizarListaConhecimento();
	}
	
	public void inserir(){
		ServiceDTO request=new ServiceDTO();
		request.set("conhecimento", conhecimento);
		try{
			BusinessDelegate.getInstance().inserirConhecimento(request);
		}
		catch(Throwable err){
			logg.error(err.getMessage());
		}
		this.atualizarListaConhecimento();
	}
}
